A storage quota is an allocation of storage. A quota tree is a subtree in a volume's file system, and such a quota tree can be used to index storage quotas or other metadata. As an example, a quota tree creates a subset of a volume to which a quota can be applied to limit its size. Many conventional file systems maintain a single table from which all metadata associated with different quota trees are stored. Even though a file system can be subdivided into different quota trees as an independent partition, the quota trees still share a common table. As a result, conflict may arise if one particular quota tree needs a particular inode on a file system, but that particular inode is in use by another quota tree.
For example, a single volume can be used as a backup destination for multiple quota trees residing on different volumes. However, when a quota tree is copied to this single volume, the inode identifiers corresponding to the quota tree may already have been allocated to another file residing in another quota tree. As a result, an exact copy of the quota tree having identical inode identifiers may not be stored in this different volume. Instead, the quota trees are assigned different inode identifiers when stored in this different volume, and the file system needs to store information about the correlation of the inode identifiers such that the original inode identifiers can be reconstructed in case the quota tree needs to be restored from the different volume.
In another example, in logical replication, a database that stores correlation information needs to be updated for each copy of a quota tree. Due to this constraint, cascade copies cannot be made. That is, the destination volume cannot be copied again. For example, a quota tree is stored on a “first” volume while a secondary copy of the quota tree is stored on a “second” volume. A tertiary copy of the quota tree is stored in a “third” volume. Here, the secondary copy is used to make the tertiary copy. In case the secondary copy fails, the tertiary copy cannot be used to restore the quota tree because the tertiary copy does not have any correlation information on the quota tree stored in the first volume. The tertiary copy only has correlation information on the secondary copy, but this secondary copy is now inaccessible.